\begin{tikzpicture}
\tikzstyle{blue_circle} = [  font={\bfseries}, shape=circle, minimum size=0.3, text=black, text width=2cm, align=center]
\def\mystrut{\vrule height 0.5cm depth 0.5cm width 0pt}
\matrix[nodes={draw, fill=blue!40}, row sep=1cm,column sep=2cm,] {

    \node [blue_circle] (producer) {Producer};&%
    \node [label={[shift={(0.0,-3.0)}]Buffer}] {Node};%
    \node[font={\bfseries}, rectangle split, rectangle split parts=4, text width=1.5cm,align=center](buffer)
        {\mystrut\textit{n}
        \nodepart{second}
        \textit{...}
        \nodepart{third}\mystrut
        \textit{2}
        \nodepart{fourth}\mystrut
       \textit{1}}; &
    %
    \node [blue_circle] (consumer) {Consumer};\\
};
\draw[->, line width = 5pt, node distance=2.8cm,shorten >= 3pt] (producer.east) -- (buffer.west);
\draw[->, line width = 5pt, node distance=2.8cm,shorten >= 3pt] (buffer.east) -- (consumer.west);
\end{tikzpicture}